package com.example.museum.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.museum.entity.Product;
import com.example.museum.entity.ProductAppraise;
import com.example.museum.vo.ProductAppraiseVo;

import java.util.List;

/**
 * 商品服务接口
 */
public interface ProductService extends IService<Product> {

    List<Product> getlist();

    void addendAppraise(ProductAppraise productAppraise);

    List<ProductAppraiseVo> getapprasielist(Long productId);

    Page<Product> getpageList(int page, int pageSize, String query);

    void addproduct(Product product);

    void updateProduct(Product product);

    void deleteByid(Long id);

    //总商品数
    Integer gettotalProducts();

    /**
     * 分页查询商品评价
     * @param page 页码
     * @param pageSize 每页大小
     * @param query 查询条件（商品名称）
     * @param rating 评分筛选
     * @return 评价分页结果
     */
    Page<ProductAppraiseVo> getAppraisePageList(int page, int pageSize, String query, Integer rating);

    /**
     * 删除商品评价
     * @param id 评价ID
     */
    void deleteAppraise(Long id);
}

